<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8">
  <title>layui</title>
  <meta name="renderer" content="webkit">
  <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
  <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
  <link rel="stylesheet" href="../layuimini/lib/layui-v2.6.3/css/layui.css" media="all">
  <link rel="stylesheet" href="../layuimini/css/public.css" media="all">
</head>
<body>
<div class="layuimini-container">
  <div class="layuimini-main">

    <script type="text/html" id="toolbarDemo">
      <div class="layui-btn-container">
        <button class="layui-btn layui-btn-normal layui-btn-sm data-add-btn" lay-event="add"> 添加新角色 </button>
<!--        <button class="layui-btn layui-btn-sm layui-btn-danger data-delete-btn" lay-event="delete"> 删除 </button>-->
      </div>
    </script>

    <table class="layui-hide" id="currentTableId" lay-filter="currentTableFilter"></table>

    <script type="text/html" id="currentTableBar">
      {{# if(d.role != 'admin' ){ }}
      <a class="layui-btn layui-btn-normal layui-btn-xs data-count-edit" lay-event="edit">编辑</a>
      <a class="layui-btn layui-btn-xs layui-btn-danger data-count-delete" lay-event="delete">删除</a>
      <a class="layui-btn layui-btn-xs layui-btn-normal data-count-permission" lay-event="permission">分配权限</a>
      {{# } }}
    </script>

  </div>
</div>
<script src="../layuimini/lib/layui-v2.6.3/layui.js" charset="utf-8"></script>
<script>
  layui.use(['form', 'table'], function () {
    var $ = layui.jquery,
            form = layui.form,
            table = layui.table;

    table.render({
      elem: '#currentTableId',
      url: '/role/list',
      toolbar: '#toolbarDemo',
      defaultToolbar: ['filter', 'exports', 'print', {
        title: '提示',
        layEvent: 'LAYTABLE_TIPS',
        icon: 'layui-icon-tips'
      }],
      cols: [ [
        {field: 'name', title: '所属部门', sort: true},
        {field: 'description',  title: '职务名称', sort: true},
        {title: '操作', toolbar: '#currentTableBar', align: "center"}
      ] ],
      limits: [1, 5, 10, 15],
      limit: 10,
      page: true,
      // skin: 'line'
    });


    /**
     * toolbar监听事件
     */
    table.on('toolbar(currentTableFilter)', function (obj) {
      if (obj.event === 'add') {  // 监听添加操作
        var index = layer.open({
          title: '添加用户',
          type: 2,
          shade: 0.2,
          maxmin:true,
          shadeClose: true,
          area: ['50%', '100%'],
          content: '/role/add',
        });
        $(window).on("resize", function () {
          layer.full(index);
        });
      }
    });


    table.on('tool(currentTableFilter)', function (obj) {
      var data = obj.data;
      if (obj.event === 'edit') {

        var index = layer.open({
          title: '编辑用户',
          type: 2,
          shade: 0.2,
          maxmin:true,
          shadeClose: true,
          area: ['50%', '100%'],
          content: '/role/editRole?roleId='+data.id,
        });
        $(window).on("resize", function () {
          layer.full(index);
        });
        return false;
      } else if (obj.event === 'delete') {
        layer.confirm('真的删除行么', function (index) {
            $.post('/role/delete',{"roleId":obj.data.id},function(res){
                if(res.data==="success"){
                    layer.msg(res.msg);
                    //重新加载表格
                    table.reload('currentTableId');
                }else {
                    layer.msg(res.msg);
                    table.reload('currentTableId');
                }
            });
          obj.del();
          layer.close(index);
        });
      } else if (obj.event === 'permission') {
          var index = layer.open({
            title: '分配权限',
            type: 2,
            shade: 0.2,
            maxmin:true,
            shadeClose: true,
            area: ['60%', '80%'],
            content: '/permission/change?rid='+obj.data.id
          });
          $(window).on("resize", function () {
            layer.full(index);
          });
      }
    });

  });
</script>

</body>
</html>